import consultasBD
import utiles

def cargaProveedores():
    consultaSQL = "SELECT idproveedor FROM proveedor"
    resultado = consultasBD.ordenCrudaRemota(consultaSQL,0)
    if resultado == () or resultado == None:
        return [],[]
    provNro = []
    provTex = []
    for item in resultado[0]:
        try:
            provNro.append(int(item[0]))
            provTex.append(item[0])
        except:
            print "No cargado proveedor",item[0]
    return provNro,provTex

def cargaCompras():
    consultaSQL = "SELECT idproveedor FROM compras"
    resultado = consultasBD.ordenCrudaRemota(consultaSQL,0)
    if resultado == () or resultado == None:
        return [],[]
    provComNro = []
    provComTex = []
    for item in resultado[0]:
        try:
            provComNro.append(int(item[0]))
            provComTex.append(str(item[0]))
        except:
            print "No cargado compra",item[0]
    return provComNro,provComTex

def localizaProveedor(codigo):
    consultaSQL = "SELECT idproveedor FROM proveedor WHERE idproveedor='"+codigo+"'"
    resultado = consultasBD.ordenCrudaRemota(consultaSQL,0)
    if resultado == () or resultado == None:
        return []
    return resultado[0]

def buscarPosicion(provTex,provNro,codigo):
    for i,codigoLocal in enumerate(provNro):
        if codigoLocal == codigo:
            return i

def main():
    provNro,provTex = cargaProveedores()
    provComNro,provComTex = cargaCompras()
    f=open("convertirCampoProveedoresCompras.sql","w")
    for i,item in enumerate(provComNro):
        pos = buscarPosicion(provTex,provNro,item)
        print i,item,
        print provTex[pos],
        print provNro[pos]
        consultaSQL = "UPDATE compras SET idproveedor='"+provTex[pos]+"' WHERE idproveedor='"+str(item)+"';"
        f.writelines(consultaSQL+"\n")
    f.close()

if __name__ == '__main__':
    main()
    